package com.blockchain.front.service.content;

import com.blockchain.common.enums.ArticleType;
import com.blockchain.common.enums.QuestionType;
import com.blockchain.common.enums.Sblx;
import com.blockchain.framework.service.Service;
import com.blockchain.framework.service.query.Paging;
import com.blockchain.framework.service.query.PagingResult;
import com.blockchain.front.service.content.entity.Advertisement;
import com.blockchain.front.service.content.entity.Article;
import com.blockchain.front.service.content.entity.FriendlyLink;
import com.blockchain.front.service.content.entity.Notice;
import com.blockchain.front.service.content.entity.QuestionEntity;

public abstract interface ContentManage extends Service {
	/**
	 * 描述：查询所有发布的焦点图广告信息列表
	 * 
	 */
	public abstract Advertisement[] getAll(Sblx sblx) throws Throwable;
	
	/**
	 * 描述：分页查询已发布网站公告信息列表
	 * 
	 */
	public abstract PagingResult<Notice> search(Paging paging) throws Throwable;
	
	/**
	 * 描述：按文章类型分页查询文章列表
	 * 
	 */
	public abstract PagingResult<Article> search(ArticleType articleType,
			Paging paging) throws Throwable;
	
	/**
	 * 描述：友情链接列表
	 * 
	 */
	public abstract FriendlyLink[] getAll() throws Throwable;
	
	/**
	 * 
	 * 描述：根据公告ID获取已发布公告信息.
	 */
	public abstract Notice get(int id) throws Throwable;
	
	/**
	 * 
	 * 描述：根据ID获取已发布公告信息内容.
	 */
	public abstract void view(int id) throws Throwable;
	
	/**
	 * 按类型查常见问题列表
	 */
	public abstract PagingResult<QuestionEntity> search(QuestionType qtype,
			Paging paging) throws Throwable;
	
	/**
	 * 根据id获取问题答案
	 */
	public abstract QuestionEntity getCjwt(int id) throws Throwable;
}
